package com.ruoyi.chat.service;

import java.util.List;

import com.ruoyi.common.core.cond.AddFriendRequestCond;
import com.ruoyi.common.core.vo.AddFriendUserVO;
import com.ruoyi.chat.domain.FriendRequest;

/**
 * 好友请求记录Service接口
 * 
 * @author zhc
 * @date 2025-05-31
 */
public interface IFriendRequestService 
{
    /**
     * 查询好友请求记录
     * 
     * @param id 好友请求记录主键
     * @return 好友请求记录
     */
    public FriendRequest selectFriendRequestById(String id);

    /**
     * 查询好友请求记录列表
     * 
     * @param friendRequest 好友请求记录
     * @return 好友请求记录集合
     */
    public List<FriendRequest> selectFriendRequestList(FriendRequest friendRequest);

    /**
     * 新增好友请求记录
     * 
     * @param friendRequest 好友请求记录
     * @return 结果
     */
    public int insertFriendRequest(FriendRequest friendRequest);

    /**
     * 修改好友请求记录
     * 
     * @param friendRequest 好友请求记录
     * @return 结果
     */
    public int updateFriendRequest(FriendRequest friendRequest);

    /**
     * 批量删除好友请求记录
     * 
     * @param ids 需要删除的好友请求记录主键集合
     * @return 结果
     */
    public int deleteFriendRequestByIds(String[] ids);

    /**
     * 删除好友请求记录信息
     * 
     * @param id 好友请求记录主键
     * @return 结果
     */
    public int deleteFriendRequestById(String id);

    AddFriendUserVO addFriendQuery(String cond);

//    Boolean addFriend(Long userId);
    Boolean addFriendRequest(AddFriendRequestCond addFriendRequestCond);

    List<AddFriendUserVO> queryFriendRequest();

    Boolean executeFriend(Long id, String executeType);
}
